This description relates to automatic gain control.
Automatic gain control (AGC) is used to maintain an output signal level nearly constant notwithstanding variations of an input signal level within a predefined dynamic range The input signal may be, for example, a signal received from a telephone channel.
As shown in FIG. 1, a telephone channel can be characterized as having a frequency response H(jω) and an attenuation A:0<|H(jω)|<1(0<ω<4(kHz)) and A<=1).
As shown in FIG. 2, a goal of AGC is to maintain the output signal level 20 at almost a constant value, even though the input signal may change within a predefined range 22 between X1 and X2.
When the signal carried on the telephone channel is a modulated data signal, the dynamic range of the signal is typically within the capacity of the AGC, e.g., within range 22. A speech signal, on the other hand, may have a wide dynamic range that changes over time. A conventional AGC tries to keep the power of the signal constant, thus distorting the speech.
The AGC process can be defined in the following way. Consider a sampled input signal x(n), where n identifies the sample interval, and the input signal spans a time interval of N samples (n=0 . . . N−1). The gain of the AGC, which changes over time may be expressed as g(n) (n=0 . . . N−1). The output of the AGC may then be expressed as:y(n)=x(n)g(n), n=0 . . . N−1  (1)
Expression (1) can be interpreted as a weighting of the original signal x(n) by the samples of y(n), which plays the role of a window function. In this case the spectrum of y(n) is a result of the convolution:Y(w)=X(w)*G(w)  (2)where:    w is the frequency in radians,    Y(w) is the spectrum of the signal at the output of the AGC,    X(w) is the Fourier transform of the input signal for the interval N, and    G(w) is the Fourier transform of the AGC gain function for the interval N.